package com.fundstrategy.fund.service;

import java.util.List;

import com.fundstrategy.fund.domain.FundBasic;
import com.fundstrategy.fund.domain.vo.FundSearchResultVo;

/**
 * 基金基本信息Service接口
 *
 * @author 邓先生
 * @date 2025-09-02
 */
public interface IFundBasicService {
    /**
     * 查询基金基本信息
     *
     * @param id 基金基本信息主键
     * @return 基金基本信息
     */
    public FundBasic selectFundBasicById(Long id);

    /**
     * 查询基金基本信息列表
     *
     * @param fundBasic 基金基本信息
     * @return 基金基本信息集合
     */
    public List<FundBasic> selectFundBasicList(FundBasic fundBasic);

    /**
     * 新增基金基本信息
     *
     * @param fundBasic 基金基本信息
     * @return 结果
     */
    public int insertFundBasic(FundBasic fundBasic);

    /**
     * 修改基金基本信息
     *
     * @param fundBasic 基金基本信息
     * @return 结果
     */
    public int updateFundBasic(FundBasic fundBasic);

    /**
     * 批量删除基金基本信息
     *
     * @param ids 需要删除的基金基本信息主键集合
     * @return 结果
     */
    public int deleteFundBasicByIds(Long[] ids);

    /**
     * 删除基金基本信息信息
     *
     * @param id 基金基本信息主键
     * @return 结果
     */
    public int deleteFundBasicById(Long id);

    /**
     * 搜索基金列表
     * @param keyword 关键字
     * @return 基金列表
     */
    List<FundSearchResultVo> searchFund(String keyword);
}
